/**
 * 国际化(i18n)模块 - 提供多语言支持
 * 支持的语言：中文(zh-CN)、英文(en-US)
 */
(function(window) {
    'use strict';
    
    // 语言包定义
    const translations = {
        'zh-CN': {
            // 主框架
            'nav.home': '首页',
            'nav.control': '控制',
            'nav.ai': 'AI',
            'nav.discovery': '发现',
            'nav.mine': '我的',
            
            // 首页(home)
            'home.title': '智能家居控制中心',
            'home.welcome': '欢迎回来',
            'home.rooms': '房间',
            'home.devices': '设备',
            'home.scenes': '场景',
            'home.recent': '最近使用',
            'home.livingRoom': '客厅',
            'home.bedroom': '卧室',
            'home.kitchen': '厨房',
            'home.bathroom': '浴室',
            'home.allDevices': '所有设备',
            'home.lights': '灯光',
            'home.airConditioners': '空调',
            'home.devices': '设备',
            'home.quickScenes': '快捷场景',
            'home.morning': '早晨唤醒',
            'home.night': '夜间模式',
            'home.movie': '观影模式',
            'home.outdoor': '离家模式',
            'home.today': '今日概览',
            'home.deviceStatus': '设备状态',
            'home.active': '活跃中',
            'home.inactive': '未活跃',
            'home.curtain': '窗帘',
            'home.music': '音乐',
            
            // 控制页(control)
            'control.title': '设备控制',
            'control.all': '全部',
            'control.lights': '灯光',
            'control.climate': '气候',
            'control.appliances': '电器',
            'control.security': '安防',
            'control.scene1': '工作模式',
            'control.scene2': '休闲模式',
            'control.scene3': '节能模式',
            'control.deviceStatus': '设备状态',
            'control.on': '开',
            'control.off': '关',
            'control.brightness': '亮度',
            'control.temperature': '温度',
            'control.speed': '风速',
            'control.mode': '模式',
            'control.colorTemp': '色温',
            'control.fanSpeed': '风速',
            'control.light': '智能灯光',
            'control.ac': '智能空调',
            
            // AI页(ai)
            'ai.title': 'AI助手',
            'ai.greeting': '您好，我是您的智能家居助手',
            'ai.askAnything': '请问有什么可以帮您的？',
            'ai.quickActions': '快捷操作',
            'ai.turnOnLights': '打开灯光',
            'ai.turnOffLights': '关闭灯光',
            'ai.setTemperature': '设置温度',
            'ai.playMusic': '播放音乐',
            'ai.send': '发送',
            'ai.typeHere': '请输入您的问题...',
            'ai.action1': '智能家居控制',
            'ai.action2': '设备状态查询',
            'ai.action3': '场景模式设置',
            'ai.action4': '帮助中心',
            'ai.welcome': '您好！我是您的AI助手，有什么可以帮助您的吗？',
            'ai.inputPlaceholder': '请输入您的问题...',
            'ai.processing': '我正在为您处理「{{action}}」相关的操作...',
            
            // 发现页(discovery)
            'discovery.title': '发现',
            'discovery.subtitle': '探索智能家居技术',
            'discovery.featured': '推荐内容',
            'discovery.latest': '最新发现',
            'discovery.trend1': '5G+VR技术在智能家居中的应用',
            'discovery.trend1Desc': '探索5G网络如何提升VR体验，以及它们如何共同改变智能家居的交互方式和使用体验。',
            'discovery.trend2': '智能照明新趋势',
            'discovery.trend2Desc': '了解最新的智能照明技术和设计趋势，为您的家居创造更舒适的光环境。',
            'discovery.trend3': '物联网安全指南',
            'discovery.trend3Desc': '保护您的智能家居设备免受网络攻击，学习基本的安全配置和最佳实践。',
            'discovery.trend4': '全屋智能方案',
            'discovery.trend4Desc': '从零开始构建全屋智能系统，实现设备互联互通和自动化控制。',
            'discovery.trend5': '智能家居节能技巧',
            'discovery.trend5Desc': '通过智能控制降低能源消耗，既环保又省钱的实用方法。',
            
            // 设置页(mine)
            'mine.title': '我的',
            'mine.profile': '个人资料',
            'mine.settings': '设置',
            'mine.devices': '我的设备',
            'mine.favorites': '我的收藏',
            'mine.history': '使用记录',
            'mine.help': '帮助与反馈',
            'mine.about': '关于我们',
            'mine.theme': '深色主题',
            'mine.language': '语言',
            'mine.zhCN': '简体中文',
            'mine.enUS': 'English',
            'mine.version': '版本',
            'mine.logout': '退出登录',
            'mine.account': '账号管理',
            
            // more页面相关
            'more.title': '更多功能',
            'more.darkMode': '深色模式',
            'more.language': '语言',
            'more.systemSettings': '系统设置',
            'more.deviceManage': '设备管理',
            'more.energyManage': '能源管理',
            'more.securitySettings': '安全设置',
            'more.vrSettings': 'VR设置',
            'more.helpSupport': '帮助与支持',
            'more.help': '使用帮助',
            'more.contact': '联系客服',
            'more.about': '关于我们',
            'more.rate': '给我们评分'
        },
        'ja-JP': {
            // 主框架
            'nav.home': 'ホーム',
            'nav.control': 'コントロール',
            'nav.ai': 'AI',
            'nav.discovery': '発見',
            'nav.mine': 'マイ',
            
            // 首页(home)
            'home.title': 'スマートホームコントロールセンター',
            'home.welcome': 'おかえりなさい',
            'home.rooms': '部屋',
            'home.devices': 'デバイス',
            'home.scenes': 'シーン',
            'home.recent': '最近の使用',
            'home.livingRoom': 'リビング',
            'home.bedroom': 'ベッドルーム',
            'home.kitchen': 'キッチン',
            'home.bathroom': 'バスルーム',
            'home.allDevices': 'すべてのデバイス',
            'home.lights': '照明',
            'home.airConditioners': 'エアコン',
            'home.quickScenes': 'クイックシーン',
            'home.morning': '朝の目覚まし',
            'home.night': 'ナイトモード',
            'home.movie': '映画モード',
            'home.outdoor': '外出モード',
            'home.today': '今日の概要',
            'home.deviceStatus': 'デバイスステータス',
            'home.active': 'アクティブ',
            'home.inactive': '非アクティブ',
            'home.curtain': 'カーテン',
            'home.music': '音楽',
            
            // 控制页(control)
            'control.title': 'デバイスコントロール',
            'control.all': 'すべて',
            'control.lights': '照明',
            'control.climate': '気候',
            'control.appliances': '家電',
            'control.security': 'セキュリティ',
            'control.scene1': '作業モード',
            'control.scene2': 'リラックスモード',
            'control.scene3': '省エネモード',
            'control.deviceStatus': 'デバイスステータス',
            'control.on': 'オン',
            'control.off': 'オフ',
            'control.brightness': '明るさ',
            'control.temperature': '温度',
            'control.speed': '速度',
            'control.mode': 'モード',
            'control.colorTemp': '色温度',
            'control.fanSpeed': 'ファン速度',
            'control.light': 'スマートライト',
            'control.ac': 'スマートエアコン',
            
            // AI页(ai)
            'ai.title': 'AIアシスタント',
            'ai.greeting': 'こんにちは、スマートホームアシスタントです',
            'ai.askAnything': 'どのようなお手伝いができますか？',
            'ai.quickActions': 'クイックアクション',
            'ai.turnOnLights': '照明をオンにする',
            'ai.turnOffLights': '照明をオフにする',
            'ai.setTemperature': '温度を設定する',
            'ai.playMusic': '音楽を再生する',
            'ai.send': '送信',
            'ai.typeHere': '質問を入力...',
            'ai.action1': 'スマートホームコントロール',
            'ai.action2': 'デバイスステータス',
            'ai.action3': 'シーン設定',
            'ai.action4': 'ヘルプセンター',
            'ai.welcome': 'こんにちは！AIアシスタントです。どのようなお手伝いができますか？',
            'ai.inputPlaceholder': '質問を入力してください...',
            'ai.processing': '{{action}}に関する操作を処理しています...',
            
            // 发现页(discovery)
            'discovery.title': '発見',
            'discovery.subtitle': 'スマートホーム技術を探検',
            'discovery.featured': '注目コンテンツ',
            'discovery.latest': '最新の発見',
            'discovery.trend1': 'スマートホームにおける5G+VR技術',
            'discovery.trend1Desc': '5GネットワークがVR体験をどのように向上させるか、またそれらがスマートホームの操作性と使用体験をどのように変革するかを探ります。',
            'discovery.trend2': 'スマート照明の新トレンド',
            'discovery.trend2Desc': '快適な光環境を作り出すための最新のスマート照明技術とデザイントレンドについて学びましょう。',
            'discovery.trend3': 'IoTセキュリティガイド',
            'discovery.trend3Desc': 'ネットワーク攻撃からスマートホームデバイスを保護し、基本的なセキュリティ設定とベストプラクティスを学びましょう。',
            'discovery.trend4': '全体住宅スマートソリューション',
            'discovery.trend4Desc': 'デバイスの相互接続と自動制御を実現し、一から全体住宅スマートシステムを構築します。',
            'discovery.trend5': 'スマートホーム省エネのヒント',
            'discovery.trend5Desc': 'スマートコントロールによるエネルギー消費の削減、環境に優しくて経済的な実用的な方法。',
            
            // 设置页(mine)
            'mine.title': 'マイ',
            'mine.profile': 'プロフィール',
            'mine.settings': '設定',
            'mine.devices': 'マイデバイス',
            'mine.favorites': 'お気に入り',
            'mine.history': '履歴',
            'mine.help': 'ヘルプとフィードバック',
            'mine.about': '会社概要',
            'mine.theme': 'ダークテーマ',
            'mine.language': '言語',
            'mine.zhCN': '簡体字中国語',
            'mine.enUS': '英語',
            'mine.version': 'バージョン',
            'mine.logout': 'ログアウト',
            'mine.account': 'アカウント管理',
            
            // more页面相关
            'more.title': 'その他の機能',
            'more.darkMode': 'ダークモード',
            'more.language': '言語',
            'more.systemSettings': 'システム設定',
            'more.deviceManage': 'デバイス管理',
            'more.energyManage': 'エネルギー管理',
            'more.securitySettings': 'セキュリティ設定',
            'more.vrSettings': 'VR設定',
            'more.helpSupport': 'ヘルプとサポート',
            'more.help': '使用ヘルプ',
            'more.contact': 'カスタマーサポート',
            'more.about': '会社概要',
            'more.rate': '評価する'
        },
        'zh-TW': {
            // 主框架
            'nav.home': '首頁',
            'nav.control': '控制',
            'nav.ai': 'AI',
            'nav.discovery': '發現',
            'nav.mine': '我的',
            
            // 首頁(home)
            'home.title': '智慧家居控制中心',
            'home.welcome': '歡迎回來',
            'home.rooms': '房間',
            'home.devices': '設備',
            'home.scenes': '場景',
            'home.recent': '最近使用',
            'home.livingRoom': '客廳',
            'home.bedroom': '臥室',
            'home.kitchen': '廚房',
            'home.bathroom': '浴室',
            'home.allDevices': '所有設備',
            'home.lights': '燈光',
            'home.airConditioners': '空調',
            'home.quickScenes': '快捷場景',
            'home.morning': '早晨喚醒',
            'home.night': '夜間模式',
            'home.movie': '觀影模式',
            'home.outdoor': '外出模式',
            'home.today': '今日概覽',
            'home.deviceStatus': '設備狀態',
            'home.active': '活躍中',
            'home.inactive': '未活躍',
            'home.curtain': '窗簾',
            'home.music': '音樂',
            
            // 控制頁(control)
            'control.title': '設備控制',
            'control.all': '全部',
            'control.lights': '燈光',
            'control.climate': '氣候',
            'control.appliances': '家電',
            'control.security': '安防',
            'control.scene1': '工作模式',
            'control.scene2': '休閒模式',
            'control.scene3': '省電模式',
            'control.deviceStatus': '設備狀態',
            'control.on': '開',
            'control.off': '關',
            'control.brightness': '亮度',
            'control.temperature': '溫度',
            'control.speed': '速度',
            'control.mode': '模式',
            'control.colorTemp': '色溫',
            'control.fanSpeed': '風速',
            'control.light': '智能燈光',
            'control.ac': '智能空調',
            
            // AI頁(ai)
            'ai.title': 'AI助手',
            'ai.greeting': '您好，我是您的智慧家居助手',
            'ai.askAnything': '請問有什麼可以幫您的？',
            'ai.quickActions': '快捷操作',
            'ai.turnOnLights': '打開燈光',
            'ai.turnOffLights': '關閉燈光',
            'ai.setTemperature': '設定溫度',
            'ai.playMusic': '播放音樂',
            'ai.send': '發送',
            'ai.typeHere': '請輸入您的問題...',
            'ai.action1': '智慧家居控制',
            'ai.action2': '設備狀態查詢',
            'ai.action3': '場景模式設定',
            'ai.action4': '幫助中心',
            'ai.welcome': '您好！我是您的AI助手，有什麼可以幫助您的嗎？',
            'ai.inputPlaceholder': '請輸入您的問題...',
            'ai.processing': '我正在為您處理「{{action}}」相關的操作...',
            
            // 發現頁(discovery)
            'discovery.title': '發現',
            'discovery.subtitle': '探索智慧家居技術',
            'discovery.featured': '推薦內容',
            'discovery.latest': '最新發現',
            'discovery.trend1': '5G+VR技術在智慧家居中的應用',
            'discovery.trend1Desc': '探索5G網路如何提升VR體驗，以及它們如何共同改變智慧家居的交互方式和使用體驗。',
            'discovery.trend2': '智能照明新趨勢',
            'discovery.trend2Desc': '了解最新的智能照明技術和設計趨勢，為您的家居創造更舒適的光環境。',
            'discovery.trend3': '物聯網安全指南',
            'discovery.trend3Desc': '保護您的智慧家居設備免受網路攻擊，學習基本的安全配置和最佳實踐。',
            'discovery.trend4': '全屋智能方案',
            'discovery.trend4Desc': '從零開始構建全屋智能系統，實現設備互聯互通和自動化控制。',
            'discovery.trend5': '智慧家居節能技巧',
            'discovery.trend5Desc': '通過智能控制降低能源消耗，既環保又省錢的實用方法。',
            
            // 設定頁(mine)
            'mine.title': '我的',
            'mine.profile': '個人資料',
            'mine.settings': '設定',
            'mine.devices': '我的設備',
            'mine.favorites': '我的收藏',
            'mine.history': '使用記錄',
            'mine.help': '幫助與反饋',
            'mine.about': '關於我們',
            'mine.theme': '深色主題',
            'mine.language': '語言',
            'mine.zhCN': '簡體中文',
            'mine.enUS': 'English',
            'mine.version': '版本',
            'mine.logout': '退出登錄',
            'mine.account': '賬號管理',
            
            // more頁面相關
            'more.title': '更多功能',
            'more.darkMode': '深色模式',
            'more.language': '語言',
            'more.systemSettings': '系統設定',
            'more.deviceManage': '設備管理',
            'more.energyManage': '能源管理',
            'more.securitySettings': '安全設定',
            'more.vrSettings': 'VR設定',
            'more.helpSupport': '幫助與支持',
            'more.help': '使用幫助',
            'more.contact': '聯繫客服',
            'more.about': '關於我們',
            'more.rate': '給我們評分'
        },
        'en-US': {
            // 主框架
            'nav.home': 'Home',
            'nav.control': 'Control',
            'nav.ai': 'AI',
            'nav.discovery': 'Discover',
            'nav.mine': 'Mine',
            
            // 首页(home)
            'home.title': 'Smart Home Control Center',
            'home.welcome': 'Welcome Back',
            'home.rooms': 'Rooms',
            'home.devices': 'Devices',
            'home.scenes': 'Scenes',
            'home.recent': 'Recent Usage',
            'home.livingRoom': 'Living Room',
            'home.bedroom': 'Bedroom',
            'home.kitchen': 'Kitchen',
            'home.bathroom': 'Bathroom',
            'home.allDevices': 'All Devices',
            'home.lights': 'Lights',
            'home.airConditioners': 'Air Conditioners',
            'home.devices': 'Devices',
            'home.quickScenes': 'Quick Scenes',
            'home.morning': 'Morning Wake Up',
            'home.night': 'Night Mode',
            'home.movie': 'Movie Mode',
            'home.outdoor': 'Away Mode',
            'home.today': 'Today Overview',
            'home.deviceStatus': 'Device Status',
            'home.active': 'Active',
            'home.inactive': 'Inactive',
            'home.curtain': 'Curtain',
            'home.music': 'Music',
            
            // 控制页(control)
            'control.title': 'Device Control',
            'control.all': 'All',
            'control.lights': 'Lights',
            'control.climate': 'Climate',
            'control.appliances': 'Appliances',
            'control.security': 'Security',
            'control.scene1': 'Work Mode',
            'control.scene2': 'Relax Mode',
            'control.scene3': 'Energy Saving',
            'control.deviceStatus': 'Device Status',
            'control.on': 'On',
            'control.off': 'Off',
            'control.brightness': 'Brightness',
            'control.temperature': 'Temperature',
            'control.speed': 'Speed',
            'control.mode': 'Mode',
            'control.colorTemp': 'Color Temp',
            'control.fanSpeed': 'Fan Speed',
            'control.light': 'Smart Light',
            'control.ac': 'Smart Air Conditioner',
            
            // AI页(ai)
            'ai.title': 'AI Assistant',
            'ai.greeting': 'Hello, I am your smart home assistant',
            'ai.askAnything': 'How can I help you?',
            'ai.quickActions': 'Quick Actions',
            'ai.turnOnLights': 'Turn on lights',
            'ai.turnOffLights': 'Turn off lights',
            'ai.setTemperature': 'Set temperature',
            'ai.playMusic': 'Play music',
            'ai.send': 'Send',
            'ai.typeHere': 'Type your question...',
            'ai.action1': 'Smart Home Control',
            'ai.action2': 'Device Status',
            'ai.action3': 'Scene Settings',
            'ai.action4': 'Help Center',
            'ai.welcome': 'Hello! I am your AI assistant. How can I help you?',
            'ai.inputPlaceholder': 'Please enter your question...',
            'ai.processing': 'I am processing your request for "{{action}}"...',
            
            // 发现页(discovery)
            'discovery.title': 'Discover',
            'discovery.subtitle': 'Explore smart home technologies',
            'discovery.featured': 'Featured',
            'discovery.latest': 'Latest Discoveries',
            'discovery.trend1': '5G+VR Technology in Smart Homes',
            'discovery.trend1Desc': 'Explore how 5G networks enhance VR experiences and how they together transform smart home interaction and usage.',
            'discovery.trend2': 'Smart Lighting Trends',
            'discovery.trend2Desc': 'Learn about the latest smart lighting technologies and design trends for a more comfortable home environment.',
            'discovery.trend3': 'IoT Security Guide',
            'discovery.trend3Desc': 'Protect your smart home devices from cyber attacks with basic security configurations and best practices.',
            'discovery.trend4': 'Whole Home Smart Solutions',
            'discovery.trend4Desc': 'Build a whole home smart system from scratch, enabling device connectivity and automated control.',
            'discovery.trend5': 'Energy Saving Tips',
            'discovery.trend5Desc': 'Reduce energy consumption through smart control with practical methods that are both eco-friendly and cost-effective.',
            
            // 设置页(mine)
            'mine.title': 'Profile',
            'mine.profile': 'Personal Profile',
            'mine.settings': 'Settings',
            'mine.devices': 'My Devices',
            'mine.favorites': 'Favorites',
            'mine.history': 'History',
            'mine.help': 'Help & Feedback',
            'mine.about': 'About Us',
            'mine.theme': 'Dark Theme',
            'mine.language': 'Language',
            'mine.zhCN': '简体中文',
            'mine.enUS': 'English',
            'mine.version': 'Version',
            'mine.logout': 'Logout',
            'mine.account': 'Account Management',
            
            // more页面相关
            'more.title': 'More Features',
            'more.darkMode': 'Dark Mode',
            'more.language': 'Language',
            'more.systemSettings': 'System Settings',
            'more.deviceManage': 'Device Management',
            'more.energyManage': 'Energy Management',
            'more.securitySettings': 'Security Settings',
            'more.vrSettings': 'VR Settings',
            'more.helpSupport': 'Help & Support',
            'more.help': 'User Guide',
            'more.contact': 'Contact Support',
            'more.about': 'About Us',
            'more.rate': 'Rate Us'
        }
    };
    
    /**
     * 国际化管理器类
     * @class I18nManager
     */
    class I18nManager {
        constructor() {
            // 从配置管理器获取语言设置，如果不存在则使用默认语言
            this.currentLanguage = window.configManager && window.configManager.get('language') || 'zh-CN';
            this.translations = translations;
        }
        
        /**
         * 设置当前语言
         * @param {string} language - 语言代码
         */
        setLanguage(language) {
            if (this.translations[language]) {
                const oldLanguage = this.currentLanguage;
                this.currentLanguage = language;
                
                // 更新配置管理器中的语言设置
                if (window.configManager) {
                    window.configManager.set('language', language);
                }
                
                // 更新UI元素
                this.updateAllElements();
                
                // 触发languageChanged事件，通知所有页面更新
                if (oldLanguage !== language) {
                    const event = new CustomEvent('languageChanged', {
                        detail: {
                            language: language,
                            previousLanguage: oldLanguage
                        }
                    });
                    window.dispatchEvent(event);
                }
                
                return true;
            }
            console.warn(`Language ${language} not supported`);
            return false;
        }
        
        /**
         * 获取当前语言
         * @returns {string} 当前语言代码
         */
        getLanguage() {
            return this.currentLanguage;
        }
        
        /**
         * 获取翻译文本
         * @param {string} key - 翻译键
         * @param {Object} params - 可选参数（用于动态替换）
         * @returns {string} 翻译后的文本
         */
        t(key, params = {}) {
            const langData = this.translations[this.currentLanguage];
            let text = langData && langData[key] ? langData[key] : key;
            
            // 替换参数
            Object.keys(params).forEach(param => {
                text = text.replace(new RegExp(`\{${param}\}`, 'g'), params[param]);
            });
            
            return text;
        }
        
        /**
         * 批量更新页面元素文本
         * @param {string} selector - CSS选择器
         * @param {string} key - 翻译键
         */
        updateElementText(selector, key) {
            const elements = document.querySelectorAll(selector);
            elements.forEach(element => {
                element.textContent = this.t(key);
            });
        }
        
        /**
         * 更新所有带有data-i18n属性的元素
         */
        updateAllElements() {
            const elements = document.querySelectorAll('[data-i18n]');
            elements.forEach(element => {
                const key = element.getAttribute('data-i18n');
                if (key) {
                    element.textContent = this.t(key);
                }
            });
        }
    }
    
    // 创建单例实例
    const i18n = new I18nManager();
    
    // 导出
    window.I18nManager = I18nManager;
    window.i18n = i18n;
    
    // 提供全局函数
    window.__ = function(key, params) {
        return i18n.t(key, params);
    };
})(window);